package game.Config;

import org.newdawn.slick.Image;
import org.newdawn.slick.SpriteSheet;

/**
 * This class contains all the information that can be stored about an enemy.
 * @author Sebastian Isheden and Victor Beer
 *
 */
public class EnemyInfo {
	private Image image;
	private float health;
	private float speed;
	private SpriteSheet deathAnimation;
	/**
	 * Creates a new EnemyInfo
	 * @param image THe image of the enemy
	 * @param health The health of the enemy
	 * @param speed THe speed of the enemy
	 * @param deathAnimation The death animation
	 */
	public EnemyInfo(Image image, float health, float speed, SpriteSheet deathAnimation){
		this.image = image.copy();
		this.health = health;
		this.speed = speed;
		this.deathAnimation = deathAnimation;
	}
	
	/**
	 * Returns a copy of the enemy image.
	 * @return A copy of the enemy image.
	 */
	public Image getImage(){
		return this.image.copy();
	}
	
	/**
	 * Returns the health of the enemy.
	 * @return THe health of the enemy.
	 */
	public float getHealth(){
		return this.health;
	}
	
	/**
	 * Returns the speed of the enemy.
	 * @return The speed of the enemy.
	 */
	public float getSpeed(){
		return this.speed;
	}
	
	/**
	 * Returns the death animation
	 * @return The death animation.
	 */
	public SpriteSheet getDeathAnimation(){
		return this.deathAnimation;
	}
}
